from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能


class 技能0(主动技能):
    名称 = "崩山击"
    所在等级 = 10
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 4
    MP = [17, 150]
    无色消耗 = 0
    data0 = [0, 178, 196, 213, 231, 251, 268, 286, 305, 322, 340, 359, 376, 395, 413, 432, 449, 467, 486, 503, 522, 541, 558, 576, 594, 612, 631, 649, 667, 685, 703, 720, 739, 758, 775, 794, 812, 830, 848, 866, 885, 902, 921, 939, 956, 975, 993, 1010, 1030, 1048, 1065, 1083, 1102, 1120, 1137, 1157, 1175, 1192, 1210, 1229, 1246, 1264, 1284, 1301, 1319, 1338, 1355, 1373, 1391, 1411, 1428]
    hit0 = 1
    data1 = [0, 1002, 1105, 1207, 1308, 1411, 1513, 1614, 1716, 1818, 1920, 2021, 2123, 2225, 2326, 2428, 2531, 2633, 2734, 2836, 2938, 3040, 3141, 3243, 3345, 3446, 3549, 3651, 3754, 3854, 3957, 4059, 4160, 4262, 4364, 4466, 4567, 4670, 4772, 4874, 4975, 5077, 5179, 5280, 5382, 5484, 5586, 5687, 5790, 5892, 5993, 6095, 6197, 6299, 6400, 6502, 6604, 6708, 6807, 6911, 7013, 7114, 7216, 7318, 7420, 7521, 7623, 7725, 7826, 7929, 8031]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 7

    power0 = 3.4


class 技能1(主动技能):
    名称 = "十字斩"
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 6
    MP = [58, 249]
    无色消耗 = 0
    data0 = [0, 2308, 2543, 2774, 3012, 3243, 3482, 3716, 3951, 4182, 4419, 4655, 4890, 5121, 5354, 5590, 5823, 6063, 6294, 6529, 6762, 7000, 7231, 7468, 7702, 7939, 8170, 8410, 8639, 8876, 9111, 9347, 9578, 9817, 10049, 10286, 10517, 10755, 10986, 11217, 11458, 11690, 11925, 12158, 12393, 12629, 12864, 13097, 13333, 13564, 13805, 14037, 14272, 14505, 14743, 14974, 15213, 15444, 15680, 15913, 16153, 16383, 16619, 16852, 17090, 17321, 17554, 17791, 18024, 18260, 18493]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能2(主动技能):
    名称 = '血之狂暴'
    所在等级 = 15
    等级上限 = 30
    基础等级 = 20
    是否有伤害 = 0
    关联技能 = ['所有']
    冷却关联技能 = ['所有']
    非冷却关联技能 = ['魔狱血刹', '血魔·弑天', '血魔极道灭世']

    def 加成倍率(self, 武器类型):
        if self.等级 <= 20:
            return round(1.00 + 0.01 * self.等级, 5)
        else:
            return round(0.9 + 0.015 * self.等级, 5)

    def CD缩减倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return 0.9


class 技能3(被动技能):
    名称 = '血气唤醒'
    所在等级 = 15
    等级上限 = 20
    基础等级 = 10

    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.267 + 0.02 * self.等级, 5)


class 技能4(主动技能):
    名称 = "血之爪痕"
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 6
    MP = [62, 266]
    无色消耗 = 0
    data0 = [0, 587, 646, 706, 765, 825, 884, 943, 1003, 1063, 1122, 1182, 1241, 1301, 1360, 1421, 1480, 1539, 1599, 1658, 1717, 1777, 1837, 1896, 1957, 2016, 2075, 2134, 2195, 2254, 2313, 2373, 2432, 2491, 2552, 2611, 2671, 2730, 2790, 2849, 2908, 2969, 3028, 3087, 3147, 3206, 3265, 3327, 3386, 3445, 3504, 3564, 3623, 3682, 3743, 3802, 3861, 3921, 3980, 4039, 4100, 4160, 4219, 4278, 4338, 4397, 4457, 4517, 4576, 4635, 4694]
    hit0 = 2
    data1 = [0, 836, 922, 1007, 1092, 1176, 1262, 1347, 1431, 1517, 1602, 1687, 1771, 1857, 1942, 2026, 2112, 2197, 2282, 2366, 2452, 2537, 2621, 2706, 2792, 2877, 2961, 3047, 3132, 3216, 3301, 3387, 3472, 3556, 3642, 3727, 3810, 3895, 3981, 4066, 4150, 4236, 4321, 4405, 4490, 4576, 4661, 4745, 4831, 4916, 5000, 5085, 5171, 5256, 5340, 5425, 5511, 5595, 5680, 5766, 5851, 5935, 6020, 6106, 6190, 6275, 6361, 6446, 6530, 6615, 6701]
    hit1 = 2
    TP成长 = 0.1
    TP上限 = 7


class 技能5(主动技能):
    名称 = "嗜魂之手"
    所在等级 = 25
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 6
    MP = [37, 290]
    无色消耗 = 0
    data0 = [0, 3003, 3310, 3614, 3919, 4225, 4531, 4835, 5140, 5445, 5749, 6054, 6360, 6664, 6971, 7275, 7580, 7886, 8190, 8495, 8800, 9105, 9410, 9717, 10021, 10326, 10631, 10936, 11242, 11546, 11850, 12156, 12460, 12767, 13072, 13377, 13681, 13987, 14292, 14595, 14902, 15205, 15514, 15818, 16121, 16426, 16731, 17035, 17341, 17646, 17951, 18257, 18562, 18867, 19173, 19477, 19781, 20087, 20392, 20696, 21003, 21307, 21612, 21918, 22223, 22527, 22832, 23137, 23441, 23748, 24053]
    hit0 = 1
    data1 = [0, 1665, 1833, 2002, 2171, 2342, 2511, 2680, 2848, 3018, 3187, 3356, 3526, 3694, 3864, 4032, 4203, 4371, 4540, 4711, 4879, 5049, 5217, 5386, 5555, 5724, 5894, 6064, 6232, 6401, 6569, 6738, 6908, 7076, 7246, 7415, 7584, 7754, 7923, 8091, 8261, 8429, 8600, 8769, 8937, 9107, 9275, 9446, 9614, 9783, 9953, 10122, 10291, 10460, 10628, 10798, 10967, 11138, 11307, 11475, 11645, 11813, 11983, 12151, 12320, 12491, 12659, 12830, 12998, 13167, 13336]
    hit1 = 0
    data2 = [0, 1810, 1995, 2178, 2362, 2548, 2730, 2915, 3099, 3283, 3467, 3649, 3834, 4018, 4203, 4387, 4572, 4754, 4938, 5122, 5306, 5491, 5673, 5857, 6043, 6226, 6411, 6595, 6777, 6962, 7145, 7330, 7514, 7696, 7880, 8067, 8250, 8434, 8618, 8801, 8986, 9169, 9354, 9538, 9720, 9903, 10090, 10273, 10458, 10641, 10825, 11009, 11193, 11377, 11561, 11744, 11928, 12114, 12297, 12482, 12665, 12849, 13033, 13216, 13401, 13585, 13767, 13952, 14136, 14322, 14505]
    hit2 = 0
    TP成长 = 0.1
    TP上限 = 7

    形态 = ['非抓', '抓取']

    def 形态变更(self, 形态, char):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "非抓":
            self.hit0 = 1
            self.hit1 = 0
            self.hit2 = 0
        if 形态 == "抓取":
            self.hit0 = 0
            self.hit1 = 1
            self.hit2 = 1


class 技能6(主动技能):
    名称 = "怒气爆发"
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 13
    MP = [142, 607]
    无色消耗 = 0
    data0 = [0, 468, 516, 562, 610, 659, 705, 752, 802, 848, 895, 945, 991, 1038, 1088, 1134, 1181, 1230, 1277, 1326, 1373, 1419, 1468, 1516, 1562, 1612, 1659, 1705, 1754, 1802, 1848, 1896, 1945, 1991, 2039, 2088, 2134, 2182, 2230, 2277, 2325, 2373, 2420, 2468, 2516, 2562, 2611, 2659, 2705, 2754, 2802, 2849, 2897, 2945, 2992, 3039, 3087, 3135, 3182, 3228, 3278, 3325, 3372, 3421, 3468, 3514, 3564, 3611, 3658, 3706, 3754]
    hit0 = 10
    data1 = [0, 1229, 1353, 1480, 1603, 1727, 1852, 1978, 2102, 2226, 2352, 2477, 2602, 2726, 2851, 2977, 3102, 3225, 3350, 3476, 3600, 3725, 3849, 3975, 4100, 4224, 4348, 4475, 4599, 4724, 4848, 4973, 5098, 5223, 5347, 5472, 5598, 5722, 5846, 5972, 6097, 6222, 6345, 6471, 6596, 6721, 6845, 6970, 7095, 7220, 7345, 7469, 7594, 7720, 7844, 7967, 8094, 8218, 8344, 8468, 8593, 8718, 8843, 8967, 9093, 9217, 9342, 9467, 9591, 9716, 9841]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能7(主动技能):
    名称 = "残酷交锋"
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 10
    MP = [110, 467]
    无色消耗 = 0
    data0 = [0, 974, 1073, 1172, 1271, 1370, 1469, 1566, 1665, 1764, 1863, 1962, 2061, 2160, 2259, 2358, 2456, 2555, 2654, 2753, 2852, 2951, 3050, 3149, 3248, 3346, 3445, 3544, 3643, 3742, 3841, 3940, 4039, 4138, 4236, 4334, 4433, 4532, 4631, 4730, 4829, 4928, 5026, 5125, 5224, 5323, 5422, 5521, 5620, 5719, 5818, 5916, 6015, 6114, 6213, 6312, 6411, 6510, 6609, 6708, 6806, 6905, 7003, 7102, 7201, 7300, 7399, 7498, 7596, 7695, 7794]
    hit0 = 1
    data1 = [0, 974, 1073, 1172, 1271, 1370, 1469, 1566, 1665, 1764, 1863, 1962, 2061, 2160, 2259, 2358, 2456, 2555, 2654, 2753, 2852, 2951, 3050, 3149, 3248, 3346, 3445, 3544, 3643, 3742, 3841, 3940, 4039, 4138, 4236, 4334, 4433, 4532, 4631, 4730, 4829, 4928, 5026, 5125, 5224, 5323, 5422, 5521, 5620, 5719, 5818, 5916, 6015, 6114, 6213, 6312, 6411, 6510, 6609, 6708, 6806, 6905, 7003, 7102, 7201, 7300, 7399, 7498, 7596, 7695, 7794]
    hit1 = 1
    data2 = [0, 2922, 3219, 3516, 3812, 4109, 4406, 4701, 4998, 5295, 5591, 5888, 6185, 6481, 6778, 7075, 7370, 7667, 7964, 8260, 8557, 8854, 9150, 9447, 9744, 10039, 10336, 10633, 10929, 11226, 11523, 11819, 12116, 12413, 12709, 13005, 13301, 13598, 13895, 14191, 14488, 14785, 15081, 15378, 15674, 15970, 16267, 16564, 16860, 17157, 17454, 17750, 18047, 18343, 18639, 18936, 19233, 19529, 19826, 20123, 20419, 20716, 21012, 21308, 21605, 21902, 22198, 22495, 22792, 23088, 23385]
    hit2 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能8(主动技能):
    名称 = "嗜魂封魔斩"
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 25
    MP = [323, 1377]
    无色消耗 = 1
    data0 = [0, 10793, 11889, 12985, 14080, 15175, 16269, 17365, 18460, 19555, 20651, 21746, 22842, 23935, 25031, 26127, 27222, 28317, 29412, 30507, 31602, 32697, 33793, 34888, 35984, 37077, 38173, 39269, 40364, 41459, 42554, 43650, 44744, 45839, 46935, 48030, 49126, 50220, 51315, 52411, 53506, 54601, 55696, 56792, 57885, 58981, 60077, 61172, 62268, 63362, 64458, 65553, 66648, 67743, 68838, 69934, 71027, 72123, 73219, 74314, 75410, 76504, 77600, 78696, 79789, 80885, 81980, 83076, 84170, 85265, 86361]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 5


class 技能9(主动技能):
    名称 = "暴怒狂斩"
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 20
    MP = [113, 1117]
    无色消耗 = 1
    data0 = [0, 1493, 1645, 1798, 1949, 2101, 2253, 2405, 2556, 2708, 2860, 3011, 3164, 3315, 3466, 3619, 3770, 3921, 4074, 4225, 4378, 4529, 4681, 4833, 4984, 5136, 5288, 5440, 5591, 5743, 5894, 6045, 6197, 6349, 6500, 6653, 6804, 6955, 7108, 7259, 7411, 7563, 7714, 7866, 8018, 8171, 8321, 8474, 8626, 8776, 8929, 9081, 9231, 9384, 9536, 9687, 9839, 9992, 10142, 10294, 10447, 10598, 10750, 10902, 11053, 11205, 11357, 11509, 11660, 11812, 11964]
    hit0 = 1
    data1 = [0, 435, 479, 522, 567, 612, 656, 699, 744, 788, 833, 877, 920, 966, 1011, 1054, 1098, 1142, 1188, 1231, 1275, 1320, 1363, 1408, 1453, 1497, 1541, 1584, 1630, 1674, 1718, 1762, 1806, 1851, 1896, 1938, 1983, 2028, 2073, 2116, 2161, 2205, 2248, 2293, 2338, 2382, 2425, 2470, 2516, 2559, 2603, 2647, 2691, 2737, 2780, 2824, 2868, 2912, 2957, 3001, 3046, 3088, 3133, 3179, 3223, 3266, 3311, 3355, 3400, 3443, 3488]
    hit1 = 8
    data2 = [0, 2492, 2744, 2997, 3250, 3502, 3756, 4009, 4260, 4513, 4768, 5020, 5273, 5527, 5778, 6031, 6285, 6537, 6789, 7041, 7296, 7549, 7802, 8055, 8307, 8560, 8813, 9066, 9320, 9573, 9825, 10078, 10330, 10584, 10836, 11088, 11342, 11596, 11848, 12102, 12354, 12606, 12859, 13113, 13365, 13617, 13872, 14124, 14377, 14631, 14882, 15135, 15388, 15641, 15894, 16146, 16400, 16653, 16906, 17159, 17411, 17664, 17916, 18170, 18424, 18675, 18929, 19182, 19434, 19688, 19941]
    hit2 = 2
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.hit0 = 0
        self.power1 = 1.56
        self.power2 = 1.56
        self.CDR *= 0.9


class 技能10(主动技能):
    名称 = '嗜血'
    所在等级 = 35
    等级上限 = 20
    基础等级 = 10
    是否有伤害 = 0
    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.10 + 0.01 * self.等级, 5)


class 技能11(主动技能):
    名称 = "血气之刃"
    所在等级 = 40
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 20
    MP = [297, 1267]
    无色消耗 = 1
    data0 = [0, 9931, 10940, 11947, 12955, 13962, 14970, 15976, 16987, 17993, 19001, 20007, 21017, 22023, 23032, 24040, 25047, 26055, 27063, 28070, 29077, 30084, 31094, 32101, 33108, 34116, 35123, 36131, 37141, 38147, 39155, 40163, 41171, 42177, 43186, 44193, 45202, 46210, 47217, 48223, 49231, 50242, 51248, 52256, 53263, 54272, 55278, 56287, 57294, 58302, 59310, 60318, 61324, 62332, 63339, 64349, 65356, 66364, 67371, 68379, 69387, 70394, 71402, 72410, 73418, 74425, 75433, 76440, 77447, 78458, 79464]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.37


class 技能12(主动技能):
    名称 = "崩山裂地斩"
    所在等级 = 45
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 40
    MP = [456, 1944]
    无色消耗 = 2
    data0 = [0, 505, 557, 606, 658, 711, 761, 813, 865, 916, 968, 1018, 1069, 1123, 1173, 1225, 1276, 1328, 1378, 1430, 1481, 1533, 1585, 1635, 1686, 1739, 1790, 1842, 1892, 1945, 1997, 2046, 2098, 2149, 2201, 2253, 2303, 2355, 2407, 2458, 2509, 2562, 2613, 2664, 2715, 2765, 2818, 2869, 2920, 2972, 3023, 3076, 3128, 3177, 3230, 3280, 3332, 3384, 3434, 3486, 3537, 3588, 3642, 3693, 3744, 3795, 3846, 3897, 3949, 4000, 4052]
    hit0 = 1
    data1 = [0, 3377, 3720, 4060, 4404, 4746, 5089, 5431, 5775, 6118, 6459, 6803, 7146, 7489, 7831, 8174, 8518, 8860, 9203, 9545, 9887, 10229, 10574, 10917, 11258, 11601, 11942, 12286, 12629, 12972, 13314, 13657, 14001, 14342, 14686, 15028, 15370, 15713, 16057, 16400, 16741, 17085, 17426, 17769, 18111, 18455, 18797, 19140, 19484, 19825, 20168, 20511, 20855, 21197, 21539, 21883, 22224, 22568, 22911, 23254, 23594, 23937, 24283, 24623, 24966, 25309, 25651, 25993, 26338, 26680, 27022]
    hit1 = 1
    data2 = [0, 2165, 2386, 2605, 2825, 3044, 3266, 3485, 3706, 3924, 4144, 4364, 4585, 4805, 5024, 5244, 5464, 5684, 5905, 6123, 6344, 6563, 6784, 7003, 7225, 7443, 7664, 7883, 8104, 8323, 8541, 8763, 8982, 9203, 9422, 9642, 9861, 10082, 10302, 10523, 10741, 10961, 11180, 11401, 11622, 11841, 12061, 12280, 12501, 12721, 12940, 13161, 13379, 13601, 13820, 14040, 14259, 14480, 14700, 14921, 15139, 15359, 15580, 15800, 16020, 16239, 16459, 16680, 16899, 17120, 17339]
    hit2 = 6
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.26
        self.CDR *= 0.95


class 技能13(被动技能):
    名称 = '鲜血之忆'
    所在等级 = 48
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 独立攻击力倍率进图(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.114 + 0.015 * self.等级, 5)


class 技能14(主动技能):
    名称 = "魔狱血刹"
    所在等级 = 50
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 145
    MP = [900, 7559]
    无色消耗 = 5
    data0 = [0, 9530, 11740, 13952, 16161, 18370, 20582, 22791, 25003, 27212, 29423, 31633, 33843, 36053, 38264, 40474, 42684, 44896, 47105, 49314, 51526, 53735, 55947, 58156, 60367, 62577, 64787, 66997, 69208, 71418, 73628, 75840, 78049, 80258, 82470, 84679, 86891, 89100, 91311, 93522, 95731, 97941, 100152, 102362, 104572, 106784, 108993, 111202, 113414, 115623, 117835]
    hit0 = 1
    data1 = [0, 1350, 1663, 1977, 2291, 2604, 2916, 3229, 3543, 3858, 4171, 4485, 4798, 5111, 5424, 5737, 6051, 6364, 6679, 6993, 7305, 7619, 7931, 8245, 8559, 8872, 9187, 9499, 9813, 10127, 10440, 10753, 11066, 11379, 11694, 12007, 12321, 12634, 12948, 13262, 13573, 13888, 14200, 14515, 14829, 15142, 15456, 15767, 16081, 16396, 16709]
    hit1 = 27


class 技能15(主动技能):
    名称 = "鲜血暴掠"
    所在等级 = 60
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 30
    MP = [344, 963]
    无色消耗 = 2
    data0 = [0, 2633, 2900, 3167, 3435, 3702, 3969, 4236, 4503, 4771, 5038, 5304, 5573, 5838, 6107, 6373, 6641, 6908, 7174, 7443, 7709, 7978, 8244, 8510, 8779, 9045, 9314, 9580, 9849, 10115, 10384, 10650, 10916, 11185, 11451, 11720, 11986, 12254, 12521, 12788, 13056, 13322, 13590, 13857, 14123, 14390, 14658, 14925, 15193, 15460, 15727]
    hit0 = 1
    data1 = [0, 14925, 16441, 17955, 19469, 20983, 22498, 24011, 25527, 27041, 28555, 30069, 31583, 33097, 34614, 36126, 37642, 39156, 40670, 42184, 43700, 45213, 46728, 48242, 49756, 51271, 52786, 54300, 55814, 57330, 58842, 60358, 61872, 63387, 64901, 66415, 67929, 69444, 70957, 72473, 73987, 75501, 77015, 78529, 80043, 81559, 83072, 84588, 86102, 87616, 89130]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    # 血之连接
    # 施放过程中连接[崩山裂地斩]时， 血气爆炸的瞬间施放[崩山裂地斩]
    # 攻击力 +14%
    # 不抓取敌人也可以引发血气爆炸
    # 血气爆炸范围 +20%
    # 攻击力 +6%
    def 装备护石(self, char):
        self.倍率 *= 1.29


class 技能16(主动技能):
    名称 = "残血暴碎击"
    所在等级 = 70
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 50
    MP = [534, 1771]
    无色消耗 = 2
    data0 = [0, 6229, 6861, 7493, 8125, 8757, 9389, 10021, 10653, 11285, 11917, 12549, 13181, 13813, 14445, 15077, 15709, 16341, 16973, 17605, 18237, 18869, 19501, 20133, 20765, 21397, 22029, 22661, 23293, 23925, 24557, 25189, 25821, 26453, 27085, 27717, 28349, 28981, 29613, 30245, 30877, 31509, 32141, 32773, 33405, 34037, 34669, 35301, 35933, 36565, 37197]
    hit0 = 5
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.8*0.73
        self.CDR *= 0.9


class 技能17(被动技能):
    名称 = '汲血之力'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.22 + 0.02 * self.等级, 5)


class 技能18(主动技能):
    名称 = "浴血之怒"
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 40
    MP = [580, 4500]
    无色消耗 = 3
    data0 = [0, 47900, 52760, 57621, 62481, 67341, 72200, 77059, 81919, 86779, 91639, 96498, 101358, 106217, 111078, 115938, 120796, 125657, 130517, 135376, 140236, 145095, 149954, 154814, 159674, 164535, 169394, 174254, 179113, 183973, 188833, 193692, 198552, 203412, 208271, 213132, 217992, 222850, 227710, 232571, 237430, 242290, 247149, 252008, 256868, 261728, 266589, 271448, 276308, 281167, 286027]
    hit0 = 1

    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.37


class 技能19(主动技能):
    名称 = "致命血陨"
    所在等级 = 80
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 50
    MP = [848, 6360]
    无色消耗 = 5
    data0 = [0, 11681, 12867, 14052, 15235, 16422, 17607, 18792, 19978, 21161, 22347, 23533, 24718, 25904, 27088, 28273, 29459, 30644, 31828, 33014, 34199, 35384, 36570, 37754, 38939, 40125, 41311, 42496, 43680, 44865, 46051, 47237, 48421, 49607, 50791, 51976, 53163, 54347, 55532, 56717, 57902, 59089, 60273, 61458, 62643, 63829, 65014, 66199, 67384, 68568, 69755]
    hit0 = 1
    data1 = [0, 14602, 16083, 17565, 19045, 20527, 22009, 23491, 24971, 26453, 27934, 29417, 30898, 32379, 33860, 35342, 36824, 38305, 39786, 41268, 42749, 44232, 45712, 47194, 48675, 50157, 51638, 53120, 54601, 56083, 57563, 59046, 60527, 62009, 63490, 64971, 66453, 67935, 69416, 70897, 72378, 73861, 75342, 76824, 78304, 79786, 81268, 82750, 84230, 85712, 87193]
    hit1 = 1
    data2 = [0, 32126, 35384, 38643, 41902, 45161, 48421, 51681, 54940, 58199, 61458, 64719, 67978, 71235, 74494, 77753, 81014, 84273, 87532, 90791, 94051, 97311, 100570, 103827, 107087, 110346, 113606, 116865, 120125, 123384, 126643, 129902, 133163, 136422, 139679, 142938, 146197, 149458, 152717, 155976, 159235, 162495, 165755, 169014, 172271, 175531, 178790, 182050, 185309, 188569, 191828]
    hit2 = 1

    是否有护石 = 1

    def 装备护石(self, char):
        self.power2 = 1.19
        self.倍率 *= 1.21
        self.CDR *= 0.9


class 技能20(主动技能):
    名称 = "血魔·弑天"
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 180
    MP = [2500, 5000]
    无色消耗 = 10
    data0 = [0, 25242, 31095, 36950, 42802, 48655, 54510, 60363, 66217, 72071, 77925, 83777, 89630, 95485, 101338, 107193, 113046, 118899, 124753, 130606, 136460, 142313, 148168, 154021, 159873, 165728, 171581, 177436, 183289, 189143, 194994, 200848, 206702, 212555, 218410, 224263, 230118, 235970, 241823, 247678, 253531, 259385, 265237, 271092, 276945, 282798, 288653, 294506, 300361, 306213, 312067]
    hit0 = 2
    data1 = [0, 61704, 76013, 90322, 104631, 118940, 133248, 147557, 161865, 176175, 190484, 204792, 219101, 233410, 247719, 262027, 276338, 290646, 304953, 319262, 333571, 347879, 362188, 376496, 390807, 405115, 419423, 433732, 448041, 462350, 476658, 490966, 505277, 519585, 533892, 548202, 562510, 576819, 591128, 605438, 619746, 634054, 648363, 662672, 676980, 691290, 705598, 719908, 734216, 748524, 762832]
    hit1 = 1


class 技能21(被动技能):
    名称 = '血气界限'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能22(主动技能):
    名称 = "疯魔血魂斩"
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 60
    MP = [1017, 7632]
    无色消耗 = 7
    data0 = [0, 29564, 32563, 35562, 38561, 41561, 44560, 47559, 50558, 53558, 56558, 59556, 62555, 65556, 68554, 71555, 74554, 77553, 80553, 83552, 86551, 89550, 92550, 95549, 98549, 101547, 104547, 107547, 110545, 113544, 116545, 119545, 122542, 125543, 128542, 131541, 134540, 137540, 140539, 143539, 146537, 149537, 152536, 155536, 158535, 161535, 164534, 167533, 170534, 173531, 176532]
    hit0 = 1
    data1 = [0, 13796, 15195, 16595, 17995, 19393, 20794, 22193, 23594, 24992, 26392, 27793, 29191, 30592, 31991, 33392, 34790, 36190, 37591, 38989, 40389, 41790, 43190, 44588, 45987, 47389, 48787, 50187, 51588, 52988, 54386, 55785, 57187, 58585, 59985, 61385, 62786, 64184, 65584, 66985, 68383, 69783, 71183, 72584, 73982, 75382, 76782, 78181, 79581, 80981, 82380]
    hit1 = 5


class 技能23(主动技能):
    名称 = '血魔极道灭世'
    所在等级 = 100
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 290
    MP = [4027, 8055]
    无色消耗 = 15
    data0 = [0, 12309, 15164, 18018, 20872, 23726, 26581, 29435, 32290, 35144, 37999, 40853, 43708, 46562, 49417, 52271, 55126, 57980, 60834, 63688, 66543, 69397, 72252, 75106, 77961, 80815, 83670, 86524, 89379, 92233, 95087, 97941, 100795, 103650, 106504, 109359, 112213, 115068, 117922, 120777, 123631, 126486, 129340, 132195, 135048, 137903, 140757, 143612, 146466, 149321, 152175]
    hit0 = 4
    data1 = [0, 16412, 20219, 24024, 27830, 31636, 35442, 39247, 43053, 46860, 50665, 54471, 58277, 62083, 65888, 69695, 73501, 77306, 81113, 84918, 88724, 92530, 96336, 100142, 103947, 107754, 111559, 115365, 119171, 122977, 126783, 130589, 134395, 138200, 142007, 145812, 149618, 153424, 157230, 161036, 164841, 168648, 172453, 176259, 180065, 183871, 187677, 191483, 195289, 199094, 202901]
    hit1 = 2
    data2 = [0, 32826, 40437, 48049, 55660, 63272, 70884, 78495, 86108, 93720, 101331, 108943, 116554, 124166, 131778, 139390, 147002, 154614, 162225, 169837, 177448, 185060, 192673, 200284, 207896, 215508, 223119, 230731, 238342, 245954, 253567, 261178, 268790, 276401, 284013, 291625, 299236, 306849, 314461, 322072, 329684, 337295, 344907, 352519, 360130, 367743, 375355, 382966, 390578, 398189, 405801]
    hit2 = 1
    data3 = [0, 131302, 161750, 192196, 222644, 253090, 283538, 313984, 344432, 374878, 405326, 435773, 466220, 496667, 527114, 557561, 588008, 618455, 648902, 679349, 709796, 740243, 770691, 801137, 831585, 862031, 892479, 922925, 953373, 983819, 1014267, 1044713, 1075160, 1105608, 1136054, 1166502, 1196948, 1227396, 1257842, 1288290, 1318736, 1349184, 1379630, 1410078, 1440524, 1470972, 1501419, 1531866, 1562313, 1592760, 1623207]
    hit3 = 1
    data4 = [0, 10257, 12636, 15015, 17393, 19772, 22151, 24529, 26909, 29287, 31666, 34045, 36423, 38802, 41180, 43559, 45938, 48316, 50695, 53073, 55452, 57831, 60210, 62589, 64967, 67346, 69725, 72103, 74482, 76860, 79239, 81618, 83996, 86375, 88753, 91132, 93511, 95890, 98269, 100647, 103026, 105405, 107783, 110162, 112540, 114919, 117298, 119676, 122055, 124434, 126812]
    hit4 = 8

class classChange(Character):
    def __init__(self, equVersion=""):
        self.实际名称 = 'berserker'
        self.名称 = '极诣·狂战士'
        self.角色 = '鬼剑士(男)'
        self.类型 = '输出'
        self.职业 = '狂战士'
        self.武器选项 = ['太刀', '钝器', '巨剑', '短剑']
        self.输出类型选项 = ['物理固伤']
        self.防具精通属性 = ['力量']
        self.类型 = '物理固伤'
        self.武器类型 = '巨剑'
        self.防具类型 = '重甲'
        技能列表 = []
        技能序号 = {}
        i = 0
        while i >= 0:
            try:
                tem = eval('技能'+str(i)+'()')
                tem.基础等级计算()
                技能序号[tem.名称] = i
                技能列表.append(tem)
                i += 1
            except:
                i = -1
        self.技能栏 = 技能列表
        self.技能序号 = 技能序号
        self.buff = 2.16

        super().__init__(equVersion)
